﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;
using Coldairarrow.Business.Interface;

namespace Coldairarrow.Entity.Interface
{
    /// <summary>
    /// 关于卖家库存余额的信息
    /// </summary>
    /// 
    public class FBOFBSReturnsDTO
    {
       
        public List<FBOFBSReturns> returns { get; set; }
        public bool has_next { get; set; }
    }
    

    public class FBOFBSReturns
    {
        public string RowId { get; set; }
        /// <summary>
        /// id	
        /// </summary>
        public string id { get; set; }
        /// <summary>
        /// 卖家ID	
        /// </summary>
        public string company_id { get; set; }
        /// <summary>
        /// 退货或取消的原因	
        /// </summary>
        public string return_reason_name { get; set; }
        /// <summary>
        ///退货类型
        /// </summary>
        public string type { get; set; }
        /// <summary>
        ///退货方案
        /// </summary>
        public string schema { get; set; }
        /// <summary>
        ///订单ID
        /// </summary>
        public string order_id { get; set; }
        /// <summary>
        ///订单编号
        /// </summary>
        public string order_number { get; set; }

        #region 退货所在仓库的信息
        /// <summary>
        ///退货所在仓库的信息
        /// </summary>
        public place place { get; set; }
        /// <summary>
        ///退货仓库ID
        /// </summary>
        public string place_id { get; set; }
        /// <summary>
        ///退货仓库名称
        /// </summary>
        public string place_name { get; set; }
        /// <summary>
        ///退货仓库地址
        /// </summary>
        public string place_address { get; set; }
        #endregion 

        #region 退货运往的仓库信息
        /// <summary>
        ///退货运往的仓库信息
        /// </summary>
        public place target_place { get; set; }
        /// <summary>
        ///退货发往仓库ID
        /// </summary>
        public string target_place_id { get; set; }
        /// <summary>
        ///退货发往仓库名称
        /// </summary>
        public string target_place_name { get; set; }
        /// <summary>
        ///退货发往仓库地址
        /// </summary>
        public string target_place_address { get; set; }
        #endregion 

        #region 存储信息
        /// <summary>
        ///存储信息
        /// </summary>
        public storage storage { get; set; }
        /// <summary>
        ///存储费用
        /// </summary>
        public string sum_price { get; set; }
        /// <summary>
        ///存储费用币别
        /// </summary>
        public string sum_currency_code { get; set; }
        /// <summary>
        ///计算存储费用的第一天
        /// </summary>
        public string tariffication_first_date { get; set; }
        /// <summary>
        ///计算存储费用的开始日期
        /// </summary>
        public string tariffication_start_date { get; set; }
        /// <summary>
        ///退货准备交付给卖家的日期
        /// </summary>
        public string arrived_moment { get; set; }
        /// <summary>
        ///退货等待交付给卖家的天数
        /// </summary>
        public string days { get; set; }
        /// <summary>
        ///销毁费用
        /// </summary>
        public string utilization_sum_price { get; set; }
        /// <summary>
        ///销毁费用币别
        /// </summary>
        public string utilization_sum_currency_code { get; set; }
        /// <summary>
        ///预计销毁日期
        /// </summary>
        public string utilization_forecast_date { get; set; }
        #endregion 存储信息

        #region 商品信息
        /// <summary>
        ///商品信息
        /// </summary>
        public product product { get; set; }
        /// <summary>
        ///SKU
        /// </summary>
        public string sku { get; set; }
        /// <summary>
        ///MSKU
        /// </summary>
        public string offer_id { get; set; }
        /// <summary>
        ///商品名称
        /// </summary>
        public string name { get; set; }
        /// <summary>
        ///商品价格币别
        /// </summary>
        public string price_currency_code { get; set; }
        /// <summary>
        ///商品价格
        /// </summary>
        public string price { get; set; }

        /// <summary>
        ///不含佣金商品价格币别
        /// </summary>
        public string price_without_commission_currency_code { get; set; }
        /// <summary>
        ///不含佣金的商品价格
        /// </summary>
        public string price_without_commission { get; set; }
        /// <summary>
        ///佣金比例
        /// </summary>
        public string commission_percent { get; set; }
        /// <summary>
        ///佣金费用币别
        /// </summary>
        public string commission_currency_code { get; set; }
        /// <summary>
        ///佣金费用
        /// </summary>
        public string commission { get; set; }
        /// <summary>
        ///产品数量
        /// </summary>
        public string quantity { get; set; }



        #endregion

        #region 退货信息
        /// <summary>
        ///退货信息
        /// </summary>
        public logistic logistic { get; set; }

        /// <summary>
        ///商品被标记为技术退货的日期
        /// </summary>
        public string technical_return_moment { get; set; }
        /// <summary>
        ///退货到达履约中心或卖家收到退货的日期
        /// </summary>
        public string final_moment { get; set; }
        /// <summary>
        ///向卖家补偿退货的日期
        /// </summary>
        public string cancelled_with_compensation_moment { get; set; }
        /// <summary>
        ///买家退货的日期
        /// </summary>
        public string return_date { get; set; }
        /// <summary>
        ///退货标签的条形码
        /// </summary>
        public string barcode { get; set; }

        #endregion

        #region 退货状态信息
        /// <summary>
        ///退货状态信息
        /// </summary>
        public visual visual { get; set; }
        /// <summary>
        ///退货状态ID
        /// </summary>
        public string status_id { get; set; }
        /// <summary>
        ///退货状态名称
        /// </summary>
        public string status_display_name { get; set; }
        /// <summary>
        ///退货状态的系统名称
        /// </summary>
        public string status_sys_name { get; set; }
        /// <summary>
        ///退货状态的变更日期
        /// </summary>
        public string change_moment { get; set; }

        #endregion

        /// <summary>
        ///退货实例信息
        /// </summary>
        //public List<exemplars> exemplars { get; set; }

        #region 其他信息
        /// <summary>
        ///其他信息
        /// </summary>
        public additional_info additional_info { get; set; }
        /// <summary>
        ///如果退货已开封，显示true
        /// </summary>
        public string is_opened { get; set; }
        /// <summary>
        ///如果退货为"超级经济"商品，显示true
        /// </summary>
        public string is_super_econom { get; set; }
        #endregion


        /// <summary>
        ///初始货件条形码
        /// </summary>
        public string clearing_id { get; set; }
        /// <summary>
        ///货件编号
        /// </summary>
        public string posting_number { get; set; }
        /// <summary>
        ///初始货件的退货条形码
        /// </summary>
        public string return_clearing_id { get; set; }
        /// <summary>
        ///先前的退货ID
        /// </summary>
        public string source_id { get; set; }

    }

    public class place
    {
        /// <summary>
        ///仓库ID
        /// </summary>
        public string id { get; set; }
        /// <summary>
        ///名称
        /// </summary>
        public string name { get; set; }
        /// <summary>
        ///地址
        /// </summary>
        public string address { get; set; }
    }

    public class storage
    {
        /// <summary>
        ///存储费用
        /// </summary>
        public sum sum { get; set; }
        /// <summary>
        ///计算存储费用的第一天
        /// </summary>
        public string tariffication_first_date { get; set; }
        /// <summary>
        ///计算存储费用的开始日期
        /// </summary>
        public string tariffication_start_date { get; set; }
        /// <summary>
        ///退货准备交付给卖家的日期
        /// </summary>
        public string arrived_moment { get; set; }
        /// <summary>
        ///退货等待交付给卖家的天数
        /// </summary>
        public string days { get; set; }
        /// <summary>
        ///销毁费用
        /// </summary>
        public sum utilization_sum { get; set; }
        /// <summary>
        ///预计销毁日期
        /// </summary>
        public string utilization_forecast_date { get; set; }
    }

    public class sum
    {
        /// <summary>
        ///货币
        /// </summary>
        public string currency_code { get; set; }
        /// <summary>
        ///存储费用
        /// </summary>
        public string price { get; set; }
    }

    public class product
    {
        /// <summary>
        ///SKU
        /// </summary>
        public string sku { get; set; }
        /// <summary>
        ///MSKU
        /// </summary>
        public string offer_id { get; set; }
        /// <summary>
        ///商品名称
        /// </summary>
        public string name { get; set; }
        /// <summary>
        ///商品价格
        /// </summary>
        public sum price { get; set; }
        /// <summary>
        ///不含佣金的商品价格
        /// </summary>
        public sum price_without_commission { get; set; }
        /// <summary>
        ///佣金比例
        /// </summary>
        public string commission_percent { get; set; }
        /// <summary>
        ///佣金费用
        /// </summary>
        public sum commission { get; set; }
        /// <summary>
        ///产品数量
        /// </summary>
        public string quantity { get; set; }
    }

    public class logistic
    {
        /// <summary>
        ///商品被标记为技术退货的日期
        /// </summary>
        public string technical_return_moment { get; set; }
        /// <summary>
        ///退货到达履约中心或卖家收到退货的日期
        /// </summary>
        public string final_moment { get; set; }
        /// <summary>
        ///向卖家补偿退货的日期
        /// </summary>
        public string cancelled_with_compensation_moment { get; set; }
        /// <summary>
        ///买家退货的日期
        /// </summary>
        public string return_date { get; set; }
        /// <summary>
        ///退货标签的条形码
        /// </summary>
        public string barcode { get; set; }
    }

    public class visual
    {
        /// <summary>
        ///退货状态
        /// </summary>
        public visual_status status { get; set; }
        /// <summary>
        ///退货状态的变更日期
        /// </summary>
        public string change_moment { get; set; }
    }

    public class visual_status
    {
        /// <summary>
        ///退货状态ID
        /// </summary>
        public string id { get; set; }
        /// <summary>
        ///退货状态名称
        /// </summary>
        public string display_name { get; set; }
        /// <summary>
        ///退货状态的系统名称
        /// </summary>
        public string sys_name { get; set; }
    }

    public class additional_info
    {
        /// <summary>
        ///如果退货已开封，显示true
        /// </summary>
        public string is_opened { get; set; }
        /// <summary>
        ///如果退货为"超级经济"商品，显示true
        /// </summary>
        public string is_super_econom { get; set; }
    }
}
